<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script type="text/javascript"> 

var arr = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"];
  // 这四个方法都可能不会改变原数组

			/*
			 * slice()：不会改变原数组
			 * 	- 可以用来从数组提取指定元素
			 * 	- 该方法不会改变元素数组，而是将截取到的元素封装到一个新数组中返回
			 * 	- 参数：
			 * 		1.截取开始的位置的索引,包含开始索引
			 * 		2.截取结束的位置的索引,不包含结束索引
			 * 			- 第二个参数可以省略不写,此时会截取从开始索引往后的所有元素
			 * 		- 索引可以传递一个负值，如果传递一个负值，则从后往前计算
			 * 			-1 倒数第一个
			 * 			-2 倒数第二个
			 */

			// 返回的也是一个数组！
			 var result1 = arr.slice(1,4);
						console.log(result1);

			result2 = arr.slice(3);
						console.log(result2);

			result3 = arr.slice(1,-2);
			console.log(result3);

						/*：会改变原数组
			 * splice()
			 * 	- 可以用于删除数组中的指定元素
			 * 	- 使用splice()会影响到原数组，会将指定元素从原数组中删除
			 * 		并将被删除的元素作为返回值返回
			 * 	- 参数：
			 * 		第一个，表示开始位置的索引
			 * 		第二个，表示删除的数量
			 * 		第三个及以后。。
			 * 			可以传递一些新的元素，这些元素将会自动插入到开始位置索引前边
			 * 	
			 */
			
			 arr = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"];
			var result4 = arr.splice(3,0,"牛魔王","铁扇公主","红孩儿");
			
			console.log(arr);
			console.log(result4); // []空数组

			arr2 = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"];
			var result5 = arr2.splice(1,1)
			console.log(arr2)
			console.log(result5)


  </script>
</head>
<body>
  
</body>
</html>